Skip to content

GlobalDeclareCheck: new check for declare -A without -g in global scope#779

Closed
AngryLoki wants to merge 1 commit intopkgcore:masterfrom
AngryLoki:globaldecl
Closed

GlobalDeclareCheck: new check for declare -A without -g in global scope#779
AngryLoki wants to merge 1 commit intopkgcore:masterfrom
AngryLoki:globaldecl

Conversation

@AngryLoki
Copy link
Copy Markdown

Any use of declare is local scope unless a -g is passed. Missing -g can cause issues when the ebuild is sourced inside a function (as non-portage package managers may do).

One example is pkgcore: when it processes ebuilds with declare -A without -g, it usually fails in configure phase (good outcome) or worse, it silently skips some files in install phase.

The new check is added as a warning since Portage is not affected.

Closes: #628

@AngryLoki
Copy link
Copy Markdown
Author

132 warnings in ::gentoo

Results for ::gentoo

app-accessibility/mbrola-voices
  GlobalDeclareWithoutG: version 0_pre20200331: line 16: call to 'declare -A' without '-g' in global scope: declare -A voicemap

app-antivirus/clamav
  GlobalDeclareWithoutG: version 1.4.1-r3: line 151: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[onenote_parser]="https://github.com/Cisco-Talos/onenote.rs;29c08532252b917543ff268284f926f30876bb79;onenote.rs-%commit%"
)
  GlobalDeclareWithoutG: version 1.4.2-r1: line 151: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[onenote_parser]="https://github.com/Cisco-Talos/onenote.rs;29c08532252b917543ff268284f926f30876bb79;onenote.rs-%commit%"
)
  GlobalDeclareWithoutG: version 1.4.3: line 151: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[onenote_parser]='https://github.com/Cisco-Talos/onenote.rs;8b450447e58143004b68dd21c11b710fdb79be92;onenote.rs-%commit%'
)
  GlobalDeclareWithoutG: version 1.4.4: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[onenote_parser]='https://github.com/Cisco-Talos/onenote.rs;8b450447e58143004b68dd21c11b710fdb79be92;onenote.rs-%commit%'
)
  GlobalDeclareWithoutG: version 1.5.1: line 305: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[clam-sigutil]='https://github.com/Cisco-Talos/clamav-signature-util;7cfeb7f630ce472239f5b0a794b62df7f592acc7;clamav-signature-util-%commit%'
	[onenote_parser]='https://github.com/Cisco-Talos/onenote.rs;29c08532252b917543ff268284f926f30876bb79;onenote.rs-%commit%'
)
  GlobalDeclareWithoutG: version 1.5.2: line 8: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[clam-sigutil]='https://github.com/Cisco-Talos/clamav-signature-util;7cfeb7f630ce472239f5b0a794b62df7f592acc7;clamav-signature-util-%commit%'
	[onenote_parser]='https://github.com/Cisco-Talos/onenote.rs;29c08532252b917543ff268284f926f30876bb79;onenote.rs-%commit%'
)

app-editors/zed
  GlobalDeclareWithoutG: version 0.226.4: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[alacritty_terminal]='https://github.com/zed-industries/alacritty;9d9640d4e56d67a09d049f9c0a300aae08d4f61e;alacritty-%commit%/alacritty_terminal'
	[async-pipe]='https://github.com/zed-industries/async-pipe-rs;82d00a04211cf4e1236029aa03e6b6ce2a74c553;async-pipe-rs-%commit%'
	[async-task]='https://github.com/smol-rs/async-task;b4486cd71e4e94fbda54ce6302444de14f4d190e;async-task-%commit%'
	[calloop]='https://github.com/zed-industries/calloop;eb6b4fd17b9af5ecc226546bdd04185391b3e265;calloop-%commit%'
	[candle-core]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-core'
	[candle-nn]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-nn'
	[candle-onnx]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-onnx'
	[dap-types]='https://github.com/zed-industries/dap-types;1b461b310481d01e02b2603c16d7144b926339f8;dap-types-%commit%/dap-types'
	[gh-workflow-macros]='https://github.com/zed-industries/gh-workflow;c9eac0ed361583e1072860d96776fa52775b82ac;gh-workflow-%commit%/crates/gh-workflow-macros'
	[gh-workflow]='https://github.com/zed-industries/gh-workflow;c9eac0ed361583e1072860d96776fa52775b82ac;gh-workflow-%commit%/crates/gh-workflow'
	[libwebrtc]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/libwebrtc'
	[livekit-api]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/livekit-api'
	[livekit-protocol]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/livekit-protocol'
	[livekit-runtime]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/livekit-runtime'
	[livekit]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/livekit'
	[lsp-types]='https://github.com/zed-industries/lsp-types;a4f410987660bf560d1e617cb78117c6b6b9f599;lsp-types-%commit%'
	[mermaid-rs-renderer]='https://github.com/zed-industries/mermaid-rs-renderer;9d8360d9cea10dc4bc86d7b8012cc6e9656e6cf2;mermaid-rs-renderer-%commit%'
	[naga]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/naga'
	[notify-types]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify-types'
	[notify]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify'
	[nvim-rs]='https://github.com/KillTheMule/nvim-rs;764dd270c642f77f10f3e19d05cc178a6cbe69f3;nvim-rs-%commit%'
	[pet-conda]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-conda'
	[pet-core]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-core'
	[pet-env-var-path]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-env-var-path'
	[pet-fs]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-fs'
	[pet-global-virtualenvs]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-global-virtualenvs'
	[pet-homebrew]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-homebrew'
	[pet-jsonrpc]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-jsonrpc'
	[pet-linux-global-python]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-linux-global-python'
	[pet-mac-commandlinetools]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-mac-commandlinetools'
	[pet-mac-python-org]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-mac-python-org'
	[pet-mac-xcode]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-mac-xcode'
	[pet-pipenv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-pipenv'
	[pet-pixi]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-pixi'
	[pet-poetry]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-poetry'
	[pet-pyenv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-pyenv'
	[pet-python-utils]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-python-utils'
	[pet-reporter]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-reporter'
	[pet-telemetry]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-telemetry'
	[pet-uv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-uv'
	[pet-venv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-venv'
	[pet-virtualenv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-virtualenv'
	[pet-virtualenvwrapper]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-virtualenvwrapper'
	[pet-windows-registry]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-windows-registry'
	[pet-windows-store]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-windows-store'
	[pet]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet'
	[rodio]='https://github.com/RustAudio/rodio;e50e726ddd0292f6ef9de0dda6b90af4ed1fb66a;rodio-%commit%'
	[tiktoken-rs]='https://github.com/zed-industries/tiktoken-rs;2570c4387a8505fb8f1d3f3557454b474f1e8271;tiktoken-rs-%commit%/tiktoken-rs'
	[tree-sitter-cpp]='https://github.com/tree-sitter/tree-sitter-cpp;5cb9b693cfd7bfacab1d9ff4acac1a4150700609;tree-sitter-cpp-%commit%'
	[tree-sitter-gitcommit]='https://github.com/zed-industries/tree-sitter-git-commit;88309716a69dd13ab83443721ba6e0b491d37ee9;tree-sitter-git-commit-%commit%'
	[tree-sitter-gomod]='https://github.com/camdencheek/tree-sitter-go-mod;2e886870578eeba1927a2dc4bd2e2b3f598c5f9a;tree-sitter-go-mod-%commit%'
	[tree-sitter-gowork]='https://github.com/zed-industries/tree-sitter-go-work;acb0617bf7f4fda02c6217676cc64acb89536dc7;tree-sitter-go-work-%commit%'
	[tree-sitter-heex]='https://github.com/zed-industries/tree-sitter-heex;1dd45142fbb05562e35b2040c6129c9bca346592;tree-sitter-heex-%commit%'
	[tree-sitter-md]='https://github.com/tree-sitter-grammars/tree-sitter-markdown;9a23c1a96c0513d8fc6520972beedd419a973539;tree-sitter-markdown-%commit%'
	[tree-sitter-typescript]='https://github.com/zed-industries/tree-sitter-typescript;e2c53597d6a5d9cf7bbe8dccde576fe1e46c5899;tree-sitter-typescript-%commit%'
	[tree-sitter-yaml]='https://github.com/zed-industries/tree-sitter-yaml;baff0b51c64ef6a1fb1f8390f3ad6015b83ec13a;tree-sitter-yaml-%commit%'
	[webrtc-sys-build]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/webrtc-sys/build'
	[webrtc-sys]='https://github.com/zed-industries/livekit-rust-sdks;5f04705ac3f356350ae31534ffbc476abc9ea83d;livekit-rust-sdks-%commit%/webrtc-sys'
	[wgpu-core-deps-apple]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu-core/platform-deps/apple'
	[wgpu-core-deps-emscripten]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu-core/platform-deps/emscripten'
	[wgpu-core-deps-windows-linux-android]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu-core/platform-deps/windows-linux-android'
	[wgpu-core]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu-core'
	[wgpu-hal]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu-hal'
	[wgpu-types]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu-types'
	[wgpu]='https://github.com/zed-industries/wgpu;e0f83a6cedc5e0b97da1ebe2d638ad103672e0a2;wgpu-%commit%/wgpu'
	[windows-capture]='https://github.com/zed-industries/windows-capture;f0d6c1b6691db75461b732f6d5ff56eed002eeb9;windows-capture-%commit%'
	[wprcontrol]='https://github.com/zed-industries/wprcontrol;cd811f7d744f65291e13131b1d907fda63ed91a1;wprcontrol-%commit%'
	[xim-ctext]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-ctext'
	[xim-parser]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-parser'
	[zed-font-kit]='https://github.com/zed-industries/font-kit;110523127440aefb11ce0cf280ae7c5071337ec5;font-kit-%commit%'
	[zed-reqwest]='https://github.com/zed-industries/reqwest;c15662463bda39148ba154100dd44d3fba5873a4;reqwest-%commit%'
	[zed-scap]='https://github.com/zed-industries/scap;4afea48c3b002197176fb19cd0f9b180dd36eaac;scap-%commit%'
	[zed-xim]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.227.1: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[alacritty_terminal]='https://github.com/zed-industries/alacritty;9d9640d4e56d67a09d049f9c0a300aae08d4f61e;alacritty-%commit%/alacritty_terminal'
	[async-pipe]='https://github.com/zed-industries/async-pipe-rs;82d00a04211cf4e1236029aa03e6b6ce2a74c553;async-pipe-rs-%commit%'
	[async-task]='https://github.com/smol-rs/async-task;b4486cd71e4e94fbda54ce6302444de14f4d190e;async-task-%commit%'
	[calloop]='https://github.com/zed-industries/calloop;eb6b4fd17b9af5ecc226546bdd04185391b3e265;calloop-%commit%'
	[candle-core]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-core'
	[candle-nn]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-nn'
	[candle-onnx]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-onnx'
	[dap-types]='https://github.com/zed-industries/dap-types;1b461b310481d01e02b2603c16d7144b926339f8;dap-types-%commit%/dap-types'
	[gh-workflow-macros]='https://github.com/zed-industries/gh-workflow;c9eac0ed361583e1072860d96776fa52775b82ac;gh-workflow-%commit%/crates/gh-workflow-macros'
	[gh-workflow]='https://github.com/zed-industries/gh-workflow;c9eac0ed361583e1072860d96776fa52775b82ac;gh-workflow-%commit%/crates/gh-workflow'
	[libwebrtc]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/libwebrtc'
	[livekit-api]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/livekit-api'
	[livekit-protocol]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/livekit-protocol'
	[livekit-runtime]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/livekit-runtime'
	[livekit]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/livekit'
	[lsp-types]='https://github.com/zed-industries/lsp-types;a4f410987660bf560d1e617cb78117c6b6b9f599;lsp-types-%commit%'
	[mermaid-rs-renderer]='https://github.com/zed-industries/mermaid-rs-renderer;374db9ead5426697c6c2111151d9f246899bc638;mermaid-rs-renderer-%commit%'
	[naga]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/naga'
	[notify-types]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify-types'
	[notify]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify'
	[nvim-rs]='https://github.com/KillTheMule/nvim-rs;764dd270c642f77f10f3e19d05cc178a6cbe69f3;nvim-rs-%commit%'
	[pet-conda]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-conda'
	[pet-core]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-core'
	[pet-env-var-path]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-env-var-path'
	[pet-fs]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-fs'
	[pet-global-virtualenvs]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-global-virtualenvs'
	[pet-homebrew]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-homebrew'
	[pet-jsonrpc]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-jsonrpc'
	[pet-linux-global-python]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-linux-global-python'
	[pet-mac-commandlinetools]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-mac-commandlinetools'
	[pet-mac-python-org]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-mac-python-org'
	[pet-mac-xcode]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-mac-xcode'
	[pet-pipenv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-pipenv'
	[pet-pixi]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-pixi'
	[pet-poetry]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-poetry'
	[pet-pyenv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-pyenv'
	[pet-python-utils]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-python-utils'
	[pet-reporter]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-reporter'
	[pet-telemetry]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-telemetry'
	[pet-uv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-uv'
	[pet-venv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-venv'
	[pet-virtualenv]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-virtualenv'
	[pet-virtualenvwrapper]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-virtualenvwrapper'
	[pet-windows-registry]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-windows-registry'
	[pet-windows-store]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet-windows-store'
	[pet]='https://github.com/microsoft/python-environment-tools;d5b5bb0c4558a51d8cc76b514bc870fd1c042f16;python-environment-tools-%commit%/crates/pet'
	[rodio]='https://github.com/RustAudio/rodio;e50e726ddd0292f6ef9de0dda6b90af4ed1fb66a;rodio-%commit%'
	[tiktoken-rs]='https://github.com/zed-industries/tiktoken-rs;2570c4387a8505fb8f1d3f3557454b474f1e8271;tiktoken-rs-%commit%/tiktoken-rs'
	[tree-sitter-cpp]='https://github.com/tree-sitter/tree-sitter-cpp;5cb9b693cfd7bfacab1d9ff4acac1a4150700609;tree-sitter-cpp-%commit%'
	[tree-sitter-gitcommit]='https://github.com/zed-industries/tree-sitter-git-commit;88309716a69dd13ab83443721ba6e0b491d37ee9;tree-sitter-git-commit-%commit%'
	[tree-sitter-gomod]='https://github.com/camdencheek/tree-sitter-go-mod;2e886870578eeba1927a2dc4bd2e2b3f598c5f9a;tree-sitter-go-mod-%commit%'
	[tree-sitter-gowork]='https://github.com/zed-industries/tree-sitter-go-work;acb0617bf7f4fda02c6217676cc64acb89536dc7;tree-sitter-go-work-%commit%'
	[tree-sitter-heex]='https://github.com/zed-industries/tree-sitter-heex;1dd45142fbb05562e35b2040c6129c9bca346592;tree-sitter-heex-%commit%'
	[tree-sitter-md]='https://github.com/tree-sitter-grammars/tree-sitter-markdown;9a23c1a96c0513d8fc6520972beedd419a973539;tree-sitter-markdown-%commit%'
	[tree-sitter-typescript]='https://github.com/zed-industries/tree-sitter-typescript;e2c53597d6a5d9cf7bbe8dccde576fe1e46c5899;tree-sitter-typescript-%commit%'
	[tree-sitter-yaml]='https://github.com/zed-industries/tree-sitter-yaml;baff0b51c64ef6a1fb1f8390f3ad6015b83ec13a;tree-sitter-yaml-%commit%'
	[webrtc-sys-build]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/webrtc-sys/build'
	[webrtc-sys]='https://github.com/zed-industries/livekit-rust-sdks;37835f840d0070d45ac8b31cce6a6ae7aca3f459;livekit-rust-sdks-%commit%/webrtc-sys'
	[wgpu-core-deps-apple]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu-core/platform-deps/apple'
	[wgpu-core-deps-emscripten]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu-core/platform-deps/emscripten'
	[wgpu-core-deps-windows-linux-android]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu-core/platform-deps/windows-linux-android'
	[wgpu-core]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu-core'
	[wgpu-hal]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu-hal'
	[wgpu-types]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu-types'
	[wgpu]='https://github.com/zed-industries/wgpu;6e0c2546d99dad72ce6ffb5b04349e6a4ce96e6d;wgpu-%commit%/wgpu'
	[windows-capture]='https://github.com/zed-industries/windows-capture;f0d6c1b6691db75461b732f6d5ff56eed002eeb9;windows-capture-%commit%'
	[wprcontrol]='https://github.com/zed-industries/wprcontrol;cd811f7d744f65291e13131b1d907fda63ed91a1;wprcontrol-%commit%'
	[xim-ctext]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-ctext'
	[xim-parser]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-parser'
	[zed-font-kit]='https://github.com/zed-industries/font-kit;110523127440aefb11ce0cf280ae7c5071337ec5;font-kit-%commit%'
	[zed-reqwest]='https://github.com/zed-industries/reqwest;c15662463bda39148ba154100dd44d3fba5873a4;reqwest-%commit%'
	[zed-scap]='https://github.com/zed-industries/scap;4afea48c3b002197176fb19cd0f9b180dd36eaac;scap-%commit%'
	[zed-xim]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.230.1: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[alacritty_terminal]='https://github.com/zed-industries/alacritty;9d9640d4e56d67a09d049f9c0a300aae08d4f61e;alacritty-%commit%/alacritty_terminal'
	[async-pipe]='https://github.com/zed-industries/async-pipe-rs;82d00a04211cf4e1236029aa03e6b6ce2a74c553;async-pipe-rs-%commit%'
	[async-task]='https://github.com/smol-rs/async-task;b4486cd71e4e94fbda54ce6302444de14f4d190e;async-task-%commit%'
	[calloop]='https://github.com/zed-industries/calloop;eb6b4fd17b9af5ecc226546bdd04185391b3e265;calloop-%commit%'
	[candle-core]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-core'
	[candle-nn]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-nn'
	[candle-onnx]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-onnx'
	[dap-types]='https://github.com/zed-industries/dap-types;1b461b310481d01e02b2603c16d7144b926339f8;dap-types-%commit%/dap-types'
	[gh-workflow-macros]='https://github.com/zed-industries/gh-workflow;37f3c0575d379c218a9c455ee67585184e40d43f;gh-workflow-%commit%/crates/gh-workflow-macros'
	[gh-workflow]='https://github.com/zed-industries/gh-workflow;37f3c0575d379c218a9c455ee67585184e40d43f;gh-workflow-%commit%/crates/gh-workflow'
	[libwebrtc]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/libwebrtc'
	[livekit-api]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit-api'
	[livekit-protocol]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit-protocol'
	[livekit-runtime]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit-runtime'
	[livekit]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit'
	[lsp-types]='https://github.com/zed-industries/lsp-types;a4f410987660bf560d1e617cb78117c6b6b9f599;lsp-types-%commit%'
	[mermaid-rs-renderer]='https://github.com/zed-industries/mermaid-rs-renderer;374db9ead5426697c6c2111151d9f246899bc638;mermaid-rs-renderer-%commit%'
	[naga]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/naga'
	[notify-types]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify-types'
	[notify]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify'
	[nvim-rs]='https://github.com/KillTheMule/nvim-rs;764dd270c642f77f10f3e19d05cc178a6cbe69f3;nvim-rs-%commit%'
	[pet-conda]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-conda'
	[pet-core]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-core'
	[pet-env-var-path]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-env-var-path'
	[pet-fs]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-fs'
	[pet-global-virtualenvs]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-global-virtualenvs'
	[pet-homebrew]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-homebrew'
	[pet-jsonrpc]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-jsonrpc'
	[pet-linux-global-python]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-linux-global-python'
	[pet-mac-commandlinetools]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-mac-commandlinetools'
	[pet-mac-python-org]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-mac-python-org'
	[pet-mac-xcode]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-mac-xcode'
	[pet-pipenv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-pipenv'
	[pet-pixi]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-pixi'
	[pet-poetry]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-poetry'
	[pet-pyenv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-pyenv'
	[pet-python-utils]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-python-utils'
	[pet-reporter]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-reporter'
	[pet-telemetry]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-telemetry'
	[pet-uv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-uv'
	[pet-venv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-venv'
	[pet-virtualenv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-virtualenv'
	[pet-virtualenvwrapper]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-virtualenvwrapper'
	[pet-windows-registry]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-windows-registry'
	[pet-windows-store]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-windows-store'
	[pet-winpython]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-winpython'
	[pet]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet'
	[proptest-macro]='https://github.com/proptest-rs/proptest;3dca198a8fef1b32e3a66f1e1897c955b4dc5b5b;proptest-%commit%/proptest-macro'
	[proptest]='https://github.com/proptest-rs/proptest;3dca198a8fef1b32e3a66f1e1897c955b4dc5b5b;proptest-%commit%/proptest'
	[rodio]='https://github.com/RustAudio/rodio;e50e726ddd0292f6ef9de0dda6b90af4ed1fb66a;rodio-%commit%'
	[tiktoken-rs]='https://github.com/zed-industries/tiktoken-rs;2570c4387a8505fb8f1d3f3557454b474f1e8271;tiktoken-rs-%commit%/tiktoken-rs'
	[tree-sitter-cpp]='https://github.com/tree-sitter/tree-sitter-cpp;5cb9b693cfd7bfacab1d9ff4acac1a4150700609;tree-sitter-cpp-%commit%'
	[tree-sitter-gitcommit]='https://github.com/zed-industries/tree-sitter-git-commit;88309716a69dd13ab83443721ba6e0b491d37ee9;tree-sitter-git-commit-%commit%'
	[tree-sitter-gomod]='https://github.com/camdencheek/tree-sitter-go-mod;2e886870578eeba1927a2dc4bd2e2b3f598c5f9a;tree-sitter-go-mod-%commit%'
	[tree-sitter-gowork]='https://github.com/zed-industries/tree-sitter-go-work;acb0617bf7f4fda02c6217676cc64acb89536dc7;tree-sitter-go-work-%commit%'
	[tree-sitter-heex]='https://github.com/zed-industries/tree-sitter-heex;1dd45142fbb05562e35b2040c6129c9bca346592;tree-sitter-heex-%commit%'
	[tree-sitter-md]='https://github.com/tree-sitter-grammars/tree-sitter-markdown;9a23c1a96c0513d8fc6520972beedd419a973539;tree-sitter-markdown-%commit%'
	[tree-sitter-typescript]='https://github.com/zed-industries/tree-sitter-typescript;e2c53597d6a5d9cf7bbe8dccde576fe1e46c5899;tree-sitter-typescript-%commit%'
	[tree-sitter-yaml]='https://github.com/zed-industries/tree-sitter-yaml;baff0b51c64ef6a1fb1f8390f3ad6015b83ec13a;tree-sitter-yaml-%commit%'
	[webrtc-sys-build]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/webrtc-sys/build'
	[webrtc-sys]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/webrtc-sys'
	[wgpu-core-deps-apple]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core/platform-deps/apple'
	[wgpu-core-deps-emscripten]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core/platform-deps/emscripten'
	[wgpu-core-deps-windows-linux-android]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core/platform-deps/windows-linux-android'
	[wgpu-core]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core'
	[wgpu-hal]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-hal'
	[wgpu-naga-bridge]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-naga-bridge'
	[wgpu-types]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-types'
	[wgpu]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu'
	[windows-capture]='https://github.com/zed-industries/windows-capture;f0d6c1b6691db75461b732f6d5ff56eed002eeb9;windows-capture-%commit%'
	[wprcontrol]='https://github.com/zed-industries/wprcontrol;cd811f7d744f65291e13131b1d907fda63ed91a1;wprcontrol-%commit%'
	[xim-ctext]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-ctext'
	[xim-parser]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-parser'
	[zed-font-kit]='https://github.com/zed-industries/font-kit;110523127440aefb11ce0cf280ae7c5071337ec5;font-kit-%commit%'
	[zed-reqwest]='https://github.com/zed-industries/reqwest;c15662463bda39148ba154100dd44d3fba5873a4;reqwest-%commit%'
	[zed-scap]='https://github.com/zed-industries/scap;4afea48c3b002197176fb19cd0f9b180dd36eaac;scap-%commit%'
	[zed-xim]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.231.2: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[alacritty_terminal]='https://github.com/zed-industries/alacritty;9d9640d4e56d67a09d049f9c0a300aae08d4f61e;alacritty-%commit%/alacritty_terminal'
	[async-pipe]='https://github.com/zed-industries/async-pipe-rs;82d00a04211cf4e1236029aa03e6b6ce2a74c553;async-pipe-rs-%commit%'
	[async-task]='https://github.com/smol-rs/async-task;b4486cd71e4e94fbda54ce6302444de14f4d190e;async-task-%commit%'
	[calloop]='https://github.com/zed-industries/calloop;eb6b4fd17b9af5ecc226546bdd04185391b3e265;calloop-%commit%'
	[candle-core]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-core'
	[candle-nn]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-nn'
	[candle-onnx]='https://github.com/zed-industries/candle;724d75eb3deebefe83f2a7381a45d4fac6eda383;candle-%commit%/candle-onnx'
	[dap-types]='https://github.com/zed-industries/dap-types;1b461b310481d01e02b2603c16d7144b926339f8;dap-types-%commit%/dap-types'
	[gh-workflow-macros]='https://github.com/zed-industries/gh-workflow;37f3c0575d379c218a9c455ee67585184e40d43f;gh-workflow-%commit%/crates/gh-workflow-macros'
	[gh-workflow]='https://github.com/zed-industries/gh-workflow;37f3c0575d379c218a9c455ee67585184e40d43f;gh-workflow-%commit%/crates/gh-workflow'
	[libwebrtc]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/libwebrtc'
	[livekit-api]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit-api'
	[livekit-protocol]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit-protocol'
	[livekit-runtime]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit-runtime'
	[livekit]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/livekit'
	[lsp-types]='https://github.com/zed-industries/lsp-types;a4f410987660bf560d1e617cb78117c6b6b9f599;lsp-types-%commit%'
	[mermaid-rs-renderer]='https://github.com/zed-industries/mermaid-rs-renderer;374db9ead5426697c6c2111151d9f246899bc638;mermaid-rs-renderer-%commit%'
	[naga]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/naga'
	[notify-types]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify-types'
	[notify]='https://github.com/zed-industries/notify;ce58c24cad542c28e04ced02e20325a4ec28a31d;notify-%commit%/notify'
	[nvim-rs]='https://github.com/KillTheMule/nvim-rs;764dd270c642f77f10f3e19d05cc178a6cbe69f3;nvim-rs-%commit%'
	[pet-conda]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-conda'
	[pet-core]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-core'
	[pet-env-var-path]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-env-var-path'
	[pet-fs]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-fs'
	[pet-global-virtualenvs]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-global-virtualenvs'
	[pet-homebrew]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-homebrew'
	[pet-jsonrpc]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-jsonrpc'
	[pet-linux-global-python]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-linux-global-python'
	[pet-mac-commandlinetools]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-mac-commandlinetools'
	[pet-mac-python-org]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-mac-python-org'
	[pet-mac-xcode]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-mac-xcode'
	[pet-pipenv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-pipenv'
	[pet-pixi]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-pixi'
	[pet-poetry]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-poetry'
	[pet-pyenv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-pyenv'
	[pet-python-utils]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-python-utils'
	[pet-reporter]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-reporter'
	[pet-telemetry]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-telemetry'
	[pet-uv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-uv'
	[pet-venv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-venv'
	[pet-virtualenv]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-virtualenv'
	[pet-virtualenvwrapper]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-virtualenvwrapper'
	[pet-windows-registry]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-windows-registry'
	[pet-windows-store]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-windows-store'
	[pet-winpython]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet-winpython'
	[pet]='https://github.com/microsoft/python-environment-tools;9e61a22af989fe54937bf07c9f9cff1bc53d9056;python-environment-tools-%commit%/crates/pet'
	[proptest-macro]='https://github.com/proptest-rs/proptest;3dca198a8fef1b32e3a66f1e1897c955b4dc5b5b;proptest-%commit%/proptest-macro'
	[proptest]='https://github.com/proptest-rs/proptest;3dca198a8fef1b32e3a66f1e1897c955b4dc5b5b;proptest-%commit%/proptest'
	[rodio]='https://github.com/RustAudio/rodio;e50e726ddd0292f6ef9de0dda6b90af4ed1fb66a;rodio-%commit%'
	[tiktoken-rs]='https://github.com/zed-industries/tiktoken-rs;2570c4387a8505fb8f1d3f3557454b474f1e8271;tiktoken-rs-%commit%/tiktoken-rs'
	[tree-sitter-cpp]='https://github.com/tree-sitter/tree-sitter-cpp;5cb9b693cfd7bfacab1d9ff4acac1a4150700609;tree-sitter-cpp-%commit%'
	[tree-sitter-gitcommit]='https://github.com/zed-industries/tree-sitter-git-commit;88309716a69dd13ab83443721ba6e0b491d37ee9;tree-sitter-git-commit-%commit%'
	[tree-sitter-gomod]='https://github.com/camdencheek/tree-sitter-go-mod;2e886870578eeba1927a2dc4bd2e2b3f598c5f9a;tree-sitter-go-mod-%commit%'
	[tree-sitter-gowork]='https://github.com/zed-industries/tree-sitter-go-work;acb0617bf7f4fda02c6217676cc64acb89536dc7;tree-sitter-go-work-%commit%'
	[tree-sitter-heex]='https://github.com/zed-industries/tree-sitter-heex;1dd45142fbb05562e35b2040c6129c9bca346592;tree-sitter-heex-%commit%'
	[tree-sitter-md]='https://github.com/tree-sitter-grammars/tree-sitter-markdown;9a23c1a96c0513d8fc6520972beedd419a973539;tree-sitter-markdown-%commit%'
	[tree-sitter-typescript]='https://github.com/zed-industries/tree-sitter-typescript;e2c53597d6a5d9cf7bbe8dccde576fe1e46c5899;tree-sitter-typescript-%commit%'
	[tree-sitter-yaml]='https://github.com/zed-industries/tree-sitter-yaml;baff0b51c64ef6a1fb1f8390f3ad6015b83ec13a;tree-sitter-yaml-%commit%'
	[webrtc-sys-build]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/webrtc-sys/build'
	[webrtc-sys]='https://github.com/zed-industries/livekit-rust-sdks;147fbca3d4b592d96d33f5e6a84b59fc0b5d9bf1;livekit-rust-sdks-%commit%/webrtc-sys'
	[wgpu-core-deps-apple]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core/platform-deps/apple'
	[wgpu-core-deps-emscripten]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core/platform-deps/emscripten'
	[wgpu-core-deps-windows-linux-android]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core/platform-deps/windows-linux-android'
	[wgpu-core]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-core'
	[wgpu-hal]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-hal'
	[wgpu-naga-bridge]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-naga-bridge'
	[wgpu-types]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu-types'
	[wgpu]='https://github.com/zed-industries/wgpu;a466bc382ea747f8e1ac810efdb6dcd49a514575;wgpu-%commit%/wgpu'
	[windows-capture]='https://github.com/zed-industries/windows-capture;f0d6c1b6691db75461b732f6d5ff56eed002eeb9;windows-capture-%commit%'
	[wprcontrol]='https://github.com/zed-industries/wprcontrol;cd811f7d744f65291e13131b1d907fda63ed91a1;wprcontrol-%commit%'
	[xim-ctext]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-ctext'
	[xim-parser]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%/xim-parser'
	[zed-font-kit]='https://github.com/zed-industries/font-kit;110523127440aefb11ce0cf280ae7c5071337ec5;font-kit-%commit%'
	[zed-reqwest]='https://github.com/zed-industries/reqwest;c15662463bda39148ba154100dd44d3fba5873a4;reqwest-%commit%'
	[zed-scap]='https://github.com/zed-industries/scap;4afea48c3b002197176fb19cd0f9b180dd36eaac;scap-%commit%'
	[zed-xim]='https://github.com/zed-industries/xim-rs;16f35a2c881b815a2b6cdfd6687988e84f8447d8;xim-rs-%commit%'
)

app-i18n/rime-data
  GlobalDeclareWithoutG: version 1.0.20250124: line 6: call to 'declare -A' without '-g' in global scope: declare -A PKGS=(
	[rime-essay]=57e94707b5d64a9848d17f9107c539ad4e9b6fc7
	[rime-bopomofo]=c7618f4f5728e1634417e9d02ea50d82b71956ab
	[rime-cangjie]=0ac8452eeb4abbcd8dd1f9e7314012310743285f
	[rime-luna-pinyin]=d2107f46dbffbe069b10072925be3c18da40fe77
	[rime-prelude]=3803f09458072e03b9ed396692ce7e1d35c88c95
	[rime-stroke]=7c9874c6b2e0b94947653e9a7de6f99623ff27e4
	[rime-terra-pinyin]=333ec4128fa1f93924a0707da3c623ccd92a73f0
)
  GlobalDeclareWithoutG: version 1.0.20250124: line 15: call to 'declare -A' without '-g' in global scope: declare -A PKGS_EXTRA=(
	[rime-array]=557dbe38381de174fe96e53e9bf8c863a275307c
	[rime-cantonese]=cb1ea1600b720743e0519dcbec3c2fc314ab4f50
	[rime-combo-pinyin]=89f521bc0a68abc06e9ce02732201b9c2a188824
	[rime-double-pinyin]=69bf85d4dfe8bac139c36abbd68d530b8b6622ea
	[rime-emoji]=ca7df5f5498ccd99cc312413ceae7d13717456b8
	[rime-ipa]=22b71710e029bcb412e9197192a638ab11bc2abf
	[rime-middle-chinese]=582e144e525525ac2b6c2498097d7c7919e84174
	[rime-pinyin-simp]=0c6861ef7420ee780270ca6d993d18d4101049d0
	[rime-quick]=3fe5911ba608cb2df1b6301b76ad1573bd482a76
	[rime-scj]=cab5a0858765eff0553dd685a2d61d5536e9149c
	[rime-soutzoe]=beeaeca72d8e17dfd1e9af58680439e9012987dc
	[rime-stenotype]=f3e9189d5ce33c55d3936cc58e39d0c88b3f0c88
	[rime-wubi]=152a0d3f3efe40cae216d1e3b338242446848d07
	[rime-wugniu]=abd1ee98efbf170258fcf43875c21a4259e00b61
)
  GlobalDeclareWithoutG: version 1.0.20251206: line 6: call to 'declare -A' without '-g' in global scope: declare -A PKGS=(
	[rime-essay]=e0160b8ef723a423e84ee52b53614ac3382f6d16
	[rime-bopomofo]=1859af68a927ba3cd5afb8c47feedcecf874dab2
	[rime-cangjie]=0ac8452eeb4abbcd8dd1f9e7314012310743285f
	[rime-luna-pinyin]=a53cdf4fd6141cd3a5c2006ae882311e5132fca0
	[rime-prelude]=3c602fdb0dcca7825103e281efc50ef7580f99ec
	[rime-stroke]=3a4b0f4013e2b4c14b1e80c92b1d4723eb65f39c
	[rime-terra-pinyin]=fa30016a9db2cf7d546ce33968c311525f0d90a0
)
  GlobalDeclareWithoutG: version 1.0.20251206: line 15: call to 'declare -A' without '-g' in global scope: declare -A PKGS_EXTRA=(
	[rime-array]=557dbe38381de174fe96e53e9bf8c863a275307c
	[rime-cantonese]=77776c0aad31c78ba743877780fae26f8b1e0dbe
	[rime-combo-pinyin]=711aaa6285216a4e86ec73ecae86a5d6e8fe2a2c
	[rime-double-pinyin]=01a13287cbd27819be1c34fa1ddc1b3643d5001b
	[rime-emoji]=3dd83a264b4686b56abddedecbde75360cbbbfab
	[rime-ipa]=22b71710e029bcb412e9197192a638ab11bc2abf
	[rime-middle-chinese]=582e144e525525ac2b6c2498097d7c7919e84174
	[rime-pinyin-simp]=0c6861ef7420ee780270ca6d993d18d4101049d0
	[rime-quick]=3fe5911ba608cb2df1b6301b76ad1573bd482a76
	[rime-scj]=cab5a0858765eff0553dd685a2d61d5536e9149c
	[rime-soutzoe]=beeaeca72d8e17dfd1e9af58680439e9012987dc
	[rime-stenotype]=bef930831ffe97846fa484a81014ad3e465a25c1
	[rime-wubi]=152a0d3f3efe40cae216d1e3b338242446848d07
	[rime-wugniu]=abd1ee98efbf170258fcf43875c21a4259e00b61
)

app-laptop/framework-tool-tui
  GlobalDeclareWithoutG: version 0.8.0: line 304: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[framework_lib]='https://github.com/FrameworkComputer/framework-system;56522d2d463e2dcbb77dc8d163a1e37cbb09d95a;framework-system-%commit%/framework_lib'
	[guid-create]='https://github.com/FrameworkComputer/guid-create;84c3ad2e8b64a12beebb460804a65da55434cfd9;guid-create-%commit%'
	[redox_hwio]='https://github.com/FrameworkComputer/rust-hwio;9bcff4277d8f3d7dce2b12c6ad81d092ae35c4ba;rust-hwio-%commit%'
	[smbios-lib]='https://github.com/FrameworkComputer/smbios-lib;b3e2fff8a6f4b8c2d729467cbbf0c8c41974cd1c;smbios-lib-%commit%'
)

app-laptop/framework_tool
  GlobalDeclareWithoutG: version 0.4.3: line 204: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[guid-create]='https://github.com/FrameworkComputer/guid-create;84c3ad2e8b64a12beebb460804a65da55434cfd9;guid-create-%commit%'
	[redox_hwio]='https://github.com/FrameworkComputer/rust-hwio;9bcff4277d8f3d7dce2b12c6ad81d092ae35c4ba;rust-hwio-%commit%'
	[smbios-lib]='https://github.com/FrameworkComputer/smbios-lib;b3e2fff8a6f4b8c2d729467cbbf0c8c41974cd1c;smbios-lib-%commit%'
	[uefi-services]='https://github.com/FrameworkComputer/uefi-rs;76130a0f1c1585012e598b8c514526bac09c68e0;uefi-rs-%commit%/uefi-services'
	[uefi]='https://github.com/FrameworkComputer/uefi-rs;76130a0f1c1585012e598b8c514526bac09c68e0;uefi-rs-%commit%/uefi'
)
  GlobalDeclareWithoutG: version 0.4.5: line 204: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[guid-create]='https://github.com/FrameworkComputer/guid-create;84c3ad2e8b64a12beebb460804a65da55434cfd9;guid-create-%commit%'
	[redox_hwio]='https://github.com/FrameworkComputer/rust-hwio;9bcff4277d8f3d7dce2b12c6ad81d092ae35c4ba;rust-hwio-%commit%'
	[smbios-lib]='https://github.com/FrameworkComputer/smbios-lib;b3e2fff8a6f4b8c2d729467cbbf0c8c41974cd1c;smbios-lib-%commit%'
	[uefi-services]='https://github.com/FrameworkComputer/uefi-rs;76130a0f1c1585012e598b8c514526bac09c68e0;uefi-rs-%commit%/uefi-services'
	[uefi]='https://github.com/FrameworkComputer/uefi-rs;76130a0f1c1585012e598b8c514526bac09c68e0;uefi-rs-%commit%/uefi'
)
  GlobalDeclareWithoutG: version 0.5.0: line 234: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[guid-create]='https://github.com/FrameworkComputer/guid-create;84c3ad2e8b64a12beebb460804a65da55434cfd9;guid-create-%commit%'
	[redox_hwio]='https://github.com/FrameworkComputer/rust-hwio;9bcff4277d8f3d7dce2b12c6ad81d092ae35c4ba;rust-hwio-%commit%'
	[smbios-lib]='https://github.com/FrameworkComputer/smbios-lib;b3e2fff8a6f4b8c2d729467cbbf0c8c41974cd1c;smbios-lib-%commit%'
	[uefi-services]='https://github.com/FrameworkComputer/uefi-rs;95165e1adde99da7a460320538d908af8b55f87f;uefi-rs-%commit%/uefi-services'
	[uefi]='https://github.com/FrameworkComputer/uefi-rs;95165e1adde99da7a460320538d908af8b55f87f;uefi-rs-%commit%/uefi'
)

app-emulation/qemu
  GlobalDeclareWithoutG: version 9.1.3-r2: line 30: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 9.2.3-r3: line 30: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 9.2.4: line 30: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 10.0.5: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 10.0.7: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 10.1.3-r1: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 10.2.0-r1: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 10.2.2: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)
  GlobalDeclareWithoutG: version 9999: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
		[keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6"
		[berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037"
		[berkeley-testfloat-3]="e7af9751d9f9fd3b47911f51a5cfd08af256a9ab"
	)

app-misc/anki
  GlobalDeclareWithoutG: version 25.09.2: line 12: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[linkcheck]='https://github.com/ankitects/linkcheck;184b2ca50ed39ca43da13f0b830a463861adb9ca;linkcheck-%commit%'
	[percent-encoding-iri]='https://github.com/ankitects/rust-url;bb930b8d089f4d30d7d19c12e54e66191de47b88;rust-url-%commit%/percent_encoding'
)
  GlobalDeclareWithoutG: version 25.09.2: line 24: call to 'declare -A' without '-g' in global scope: declare -A COMMITS=(
	[anki]="3890e12c9e48c028c3f12aa58cb64bd9f8895e30"
	[ftl-core]="480ef0da728c7ea3485c58529ae7ee02be3e5dba"
	[ftl-desktop]="fd5f984785ad07a0d3dbd893ee3d7e3671eaebd6"
)

app-shells/fish
  GlobalDeclareWithoutG: version 4.4.0: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[pcre2-sys]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%/pcre2-sys'
	[pcre2]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%'
)
  GlobalDeclareWithoutG: version 4.5.0-r2: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
		[pcre2-sys]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%/pcre2-sys'
		[pcre2]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%'
	)
  GlobalDeclareWithoutG: version 4.6.0: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
		[pcre2-sys]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%/pcre2-sys'
		[pcre2]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%'
	)
  GlobalDeclareWithoutG: version 9999: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
		[pcre2-sys]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%/pcre2-sys'
		[pcre2]='https://github.com/fish-shell/rust-pcre2;85b7afba1a9d9bd445779800e5bcafeb732e4421;rust-pcre2-%commit%'
	)

dev-libs/blazesym_c
  GlobalDeclareWithoutG: version 0.1.5: line 13: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[vmlinux]='https://github.com/libbpf/vmlinux.h;a9c092aa771310bf8b00b5018f7d40a1fdb6ec82;vmlinux.h-%commit%'
)
  GlobalDeclareWithoutG: version 0.1.7: line 13: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[vmlinux]='https://github.com/libbpf/vmlinux.h;a9c092aa771310bf8b00b5018f7d40a1fdb6ec82;vmlinux.h-%commit%'
)

dev-lang/rust
  GlobalDeclareWithoutG: version 1.74.1-r101: line 62: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.75.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.76.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.77.1-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.78.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.79.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.80.1-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.81.0-r101: line 59: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.82.0-r103: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.83.0-r3: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.84.0-r2: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.84.1-r2: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.85.0-r2: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.85.1-r1: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.86.0-r2: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.87.0-r1: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.88.0: line 60: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.89.0: line 60: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.90.0-r1: line 67: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.91.0: line 62: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.92.0_p1-r1: line 80: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.93.0: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.93.1: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.94.0: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.95.0_beta20260310: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 9999: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS

dev-python/ensurepip-setuptools
  GlobalDeclareWithoutG: version 80.9.0-r1: line 46: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
	[autocommand]=LGPL-3
	[backports.tarfile]=MIT
	[importlib_metadata]=Apache-2.0
	[inflect]=MIT
	[jaraco.collections]=MIT
	[jaraco.context]=MIT
	[jaraco.functools]=MIT
	[jaraco.text]=MIT
	[more_itertools]=MIT
	[packaging]="|| ( Apache-2.0 MIT )"
	[platformdirs]=MIT
	[tomli]=MIT
	[typeguard]=MIT
	[typing_extensions]=PSF-2
	[wheel]=MIT  # technically it also vendors packaging but we have that
	[zipp]=MIT
)
  GlobalDeclareWithoutG: version 81.0.0: line 46: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
	[autocommand]=LGPL-3
	[backports.tarfile]=MIT
	[importlib_metadata]=Apache-2.0
	[jaraco_context]=MIT
	[jaraco_functools]=MIT
	[jaraco.text]=MIT
	[more_itertools]=MIT
	[packaging]="|| ( Apache-2.0 MIT )"
	[platformdirs]=MIT
	[tomli]=MIT
	[wheel]=MIT
	[zipp]=MIT
)
  GlobalDeclareWithoutG: version 82.0.1: line 46: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
	[autocommand]=LGPL-3
	[backports.tarfile]=MIT
	[importlib_metadata]=Apache-2.0
	[jaraco_context]=MIT
	[jaraco_functools]=MIT
	[jaraco.text]=MIT
	[more_itertools]=MIT
	[packaging]="|| ( Apache-2.0 MIT )"
	[platformdirs]=MIT
	[tomli]=MIT
	[wheel]=MIT
	[zipp]=MIT
)

dev-python/ensurepip-pip
  GlobalDeclareWithoutG: version 25.3: line 59: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
	[cachecontrol]=Apache-2.0
	[certifi]=MPL-2.0
	[dependency_groups]=MIT
	[distlib]=PSF-2
	[distro]=Apache-2.0
	[idna]=BSD
	[msgpack]=Apache-2.0
	[packaging]="|| ( Apache-2.0 MIT )"
	[pkg_resources]=MIT
	[platformdirs]=MIT
	[pygments]=BSD-2
	[pyproject_hooks]=MIT
	[requests]=Apache-2.0
	[resolvelib]=ISC
	[rich]=MIT
	[tomli]=MIT
	[tomli_w]=MIT
	[truststore]=MIT
	[urllib3]=MIT
)
  GlobalDeclareWithoutG: version 26.0: line 59: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
	[cachecontrol]=Apache-2.0
	[certifi]=MPL-2.0
	[dependency_groups]=MIT
	[distlib]=PSF-2
	[distro]=Apache-2.0
	[idna]=BSD
	[msgpack]=Apache-2.0
	[packaging]="|| ( Apache-2.0 MIT )"
	[pkg_resources]=MIT
	[platformdirs]=MIT
	[pygments]=BSD-2
	[pyproject_hooks]=MIT
	[requests]=Apache-2.0
	[resolvelib]=ISC
	[rich]=MIT
	[tomli]=MIT
	[tomli_w]=MIT
	[truststore]=MIT
	[urllib3]=MIT
)
  GlobalDeclareWithoutG: version 26.0.1: line 59: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
	[cachecontrol]=Apache-2.0
	[certifi]=MPL-2.0
	[dependency_groups]=MIT
	[distlib]=PSF-2
	[distro]=Apache-2.0
	[idna]=BSD
	[msgpack]=Apache-2.0
	[packaging]="|| ( Apache-2.0 MIT )"
	[pkg_resources]=MIT
	[platformdirs]=MIT
	[pygments]=BSD-2
	[pyproject_hooks]=MIT
	[requests]=Apache-2.0
	[resolvelib]=ISC
	[rich]=MIT
	[tomli]=MIT
	[tomli_w]=MIT
	[truststore]=MIT
	[urllib3]=MIT
)

dev-python/pyproject-fmt
  GlobalDeclareWithoutG: version 2.18.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[tombi-accessor]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-accessor'
	[tombi-ast-editor]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-ast-editor'
	[tombi-ast]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-ast'
	[tombi-cache]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-cache'
	[tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-comment-directive-serde'
	[tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-comment-directive-store'
	[tombi-comment-directive]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-comment-directive'
	[tombi-config]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-config'
	[tombi-date-time]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-date-time'
	[tombi-diagnostic]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-diagnostic'
	[tombi-document-tree]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-document-tree'
	[tombi-document]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-document'
	[tombi-formatter]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-formatter'
	[tombi-future]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-future'
	[tombi-json-lexer]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-json-lexer'
	[tombi-json-syntax]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-json-syntax'
	[tombi-json-value]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-json-value'
	[tombi-json]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-json'
	[tombi-lexer]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-lexer'
	[tombi-parser]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-parser'
	[tombi-regex]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-regex'
	[tombi-rg-tree]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-rg-tree'
	[tombi-schema-store]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-schema-store'
	[tombi-severity-level]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-severity-level'
	[tombi-syntax]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-syntax'
	[tombi-text]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-text'
	[tombi-toml-text]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-toml-text'
	[tombi-toml-version]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-toml-version'
	[tombi-uri]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-uri'
	[tombi-validator]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-validator'
	[tombi-version-sort]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-version-sort'
	[tombi-x-keyword]='https://github.com/tombi-toml/tombi;a46abd1e69cc36bba19f01cedf52eb7009ac83d7;tombi-%commit%/crates/tombi-x-keyword'
)
  GlobalDeclareWithoutG: version 2.19.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[tombi-accessor]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-accessor'
	[tombi-ast-editor]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-ast-editor'
	[tombi-ast]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-ast'
	[tombi-cache]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-cache'
	[tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive-serde'
	[tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive-store'
	[tombi-comment-directive]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive'
	[tombi-config]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-config'
	[tombi-date-time]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-date-time'
	[tombi-diagnostic]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-diagnostic'
	[tombi-document-tree]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-document-tree'
	[tombi-document]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-document'
	[tombi-formatter]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-formatter'
	[tombi-future]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-future'
	[tombi-hashmap]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-hashmap'
	[tombi-json-lexer]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-lexer'
	[tombi-json-syntax]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-syntax'
	[tombi-json-value]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-value'
	[tombi-json]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json'
	[tombi-lexer]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-lexer'
	[tombi-parser]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-parser'
	[tombi-regex]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-regex'
	[tombi-rg-tree]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-rg-tree'
	[tombi-schema-store]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-schema-store'
	[tombi-severity-level]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-severity-level'
	[tombi-syntax]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-syntax'
	[tombi-text]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-text'
	[tombi-toml-text]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-toml-text'
	[tombi-toml-version]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-toml-version'
	[tombi-uri]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-uri'
	[tombi-validator]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-validator'
	[tombi-version-sort]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-version-sort'
	[tombi-x-keyword]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-x-keyword'
)
  GlobalDeclareWithoutG: version 2.20.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[tombi-accessor]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-accessor'
	[tombi-ast-editor]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-ast-editor'
	[tombi-ast]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-ast'
	[tombi-cache]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-cache'
	[tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive-serde'
	[tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive-store'
	[tombi-comment-directive]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive'
	[tombi-config]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-config'
	[tombi-date-time]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-date-time'
	[tombi-diagnostic]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-diagnostic'
	[tombi-document-tree]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-document-tree'
	[tombi-document]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-document'
	[tombi-formatter]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-formatter'
	[tombi-future]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-future'
	[tombi-hashmap]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-hashmap'
	[tombi-json-lexer]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-lexer'
	[tombi-json-syntax]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-syntax'
	[tombi-json-value]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-value'
	[tombi-json]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json'
	[tombi-lexer]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-lexer'
	[tombi-parser]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-parser'
	[tombi-regex]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-regex'
	[tombi-rg-tree]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-rg-tree'
	[tombi-schema-store]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-schema-store'
	[tombi-severity-level]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-severity-level'
	[tombi-syntax]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-syntax'
	[tombi-text]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-text'
	[tombi-toml-text]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-toml-text'
	[tombi-toml-version]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-toml-version'
	[tombi-uri]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-uri'
	[tombi-validator]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-validator'
	[tombi-version-sort]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-version-sort'
	[tombi-x-keyword]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-x-keyword'
)
  GlobalDeclareWithoutG: version 2.21.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[tombi-accessor]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-accessor'
	[tombi-ast-editor]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-ast-editor'
	[tombi-ast]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-ast'
	[tombi-cache]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-cache'
	[tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive-serde'
	[tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive-store'
	[tombi-comment-directive]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-comment-directive'
	[tombi-config]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-config'
	[tombi-date-time]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-date-time'
	[tombi-diagnostic]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-diagnostic'
	[tombi-document-tree]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-document-tree'
	[tombi-document]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-document'
	[tombi-formatter]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-formatter'
	[tombi-future]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-future'
	[tombi-hashmap]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-hashmap'
	[tombi-json-lexer]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-lexer'
	[tombi-json-syntax]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-syntax'
	[tombi-json-value]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json-value'
	[tombi-json]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-json'
	[tombi-lexer]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-lexer'
	[tombi-parser]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-parser'
	[tombi-regex]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-regex'
	[tombi-rg-tree]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-rg-tree'
	[tombi-schema-store]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-schema-store'
	[tombi-severity-level]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-severity-level'
	[tombi-syntax]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-syntax'
	[tombi-text]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-text'
	[tombi-toml-text]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-toml-text'
	[tombi-toml-version]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-toml-version'
	[tombi-uri]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-uri'
	[tombi-validator]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-validator'
	[tombi-version-sort]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-version-sort'
	[tombi-x-keyword]='https://github.com/tombi-toml/tombi;afbc4d39033e872c0739d43b66cb4b5c278ba11c;tombi-%commit%/crates/tombi-x-keyword'
)

dev-python/pyside
  GlobalDeclareWithoutG: version 6.10.2: line 44: call to 'declare -A' without '-g' in global scope: declare -A QT_MODULES=(
	["3d"]="3DCore 3DRender 3DLogic 3DInput 3DAnimation 3DExtras"
	["bluetooth"]="Bluetooth"
	["charts"]="Charts"
	["+concurrent"]="Concurrent"
	["+core"]="Core"
	["+dbus"]="DBus"
	["designer"]="Designer"
	["+gui"]="Gui"
	["help"]="Help"
	["httpserver"]="HttpServer"
	["location"]="Location"
	["multimedia"]="Multimedia" # plus widgets
	["network-auth"]="NetworkAuth"
	["+network"]="Network"
	["nfc"]="Nfc"
	["+opengl"]="OpenGL" # plus widgets
	["pdfium"]="Pdf" # plus widgets
	["positioning"]="Positioning"
	["+printsupport"]="PrintSupport"
	["qml"]="Qml"
	["quick3d"]="Quick3D"
	["quick"]="Quick" # plus widgets
	["remoteobjects"]="RemoteObjects"
	["scxml"]="Scxml"
	["sensors"]="Sensors"
	["serialbus"]="SerialBus"
	["serialport"]="SerialPort"
	["spatialaudio"]="SpatialAudio"
	["+sql"]="Sql"
	["svg"]="Svg" # plus widgets
	["speech"]="TextToSpeech"
	["+testlib"]="Test"
	["uitools"]="UiTools"
	["webchannel"]="WebChannel"
	["webengine"]="WebEngineCore" # plus widgets and quick
	["websockets"]="WebSockets"
	["webview"]="WebView"
	["+widgets"]="Widgets"
	["+xml"]="Xml"
)
  GlobalDeclareWithoutG: version 6.10.2: line 89: call to 'declare -A' without '-g' in global scope: declare -A QT_REQUIREMENTS=(
	["3d"]="gui network opengl"
	["bluetooth"]="core"
	["charts"]="core gui widgets"
	["concurrent"]="core"
	["dbus"]="core"
	["designer"]="widgets"
	["gles2-only"]="gui"
	["gui"]="core"
	["help"]="widgets"
	["httpserver"]="core concurrent network websockets"
	["location"]="core positioning"
	["multimedia"]="core gui network"
	["network-auth"]="network"
	["network"]="core"
	["nfc"]="core"
	["opengl"]="gui"
	["pdfium"]="core gui network"
	["positioning"]="core"
	["printsupport"]="widgets"
	["qml"]="network"
	["quick"]="gui network qml opengl"
	["quick3d"]="gui network qml quick"
	["remoteobjects"]="core network"
	["scxml"]="core"
	["sensors"]="core"
	["serialbus"]="core network serialport"
	["serialport"]="core"
	["spatialaudio"]="core gui network multimedia"
	["speech"]="core multimedia"
	["sql"]="widgets"
	["svg"]="gui"
	["testlib"]="widgets"
	["uitools"]="widgets"
	["webchannel"]="core"
	["webengine"]="core gui network printsupport quick webchannel"
	["websockets"]="network"
	["webview"]="gui quick webengine"
	["widgets"]="gui"
	["xml"]="core"
)
  GlobalDeclareWithoutG: version 6.10.3: line 44: call to 'declare -A' without '-g' in global scope: declare -A QT_MODULES=(
	["3d"]="3DCore 3DRender 3DLogic 3DInput 3DAnimation 3DExtras"
	["bluetooth"]="Bluetooth"
	["charts"]="Charts"
	["+concurrent"]="Concurrent"
	["+core"]="Core"
	["+dbus"]="DBus"
	["designer"]="Designer"
	["+gui"]="Gui"
	["help"]="Help"
	["httpserver"]="HttpServer"
	["location"]="Location"
	["multimedia"]="Multimedia" # plus widgets
	["network-auth"]="NetworkAuth"
	["+network"]="Network"
	["nfc"]="Nfc"
	["+opengl"]="OpenGL" # plus widgets
	["pdfium"]="Pdf" # plus widgets
	["positioning"]="Positioning"
	["+printsupport"]="PrintSupport"
	["qml"]="Qml"
	["quick3d"]="Quick3D"
	["quick"]="Quick" # plus widgets
	["remoteobjects"]="RemoteObjects"
	["scxml"]="Scxml"
	["sensors"]="Sensors"
	["serialbus"]="SerialBus"
	["serialport"]="SerialPort"
	["spatialaudio"]="SpatialAudio"
	["+sql"]="Sql"
	["svg"]="Svg" # plus widgets
	["speech"]="TextToSpeech"
	["+testlib"]="Test"
	["uitools"]="UiTools"
	["webchannel"]="WebChannel"
	["webengine"]="WebEngineCore" # plus widgets and quick
	["websockets"]="WebSockets"
	["webview"]="WebView"
	["+widgets"]="Widgets"
	["+xml"]="Xml"
)
  GlobalDeclareWithoutG: version 6.10.3: line 89: call to 'declare -A' without '-g' in global scope: declare -A QT_REQUIREMENTS=(
	["3d"]="gui network opengl"
	["bluetooth"]="core"
	["charts"]="core gui widgets"
	["concurrent"]="core"
	["dbus"]="core"
	["designer"]="widgets"
	["gles2-only"]="gui"
	["gui"]="core"
	["help"]="widgets"
	["httpserver"]="core concurrent network websockets"
	["location"]="core positioning"
	["multimedia"]="core gui network"
	["network-auth"]="network"
	["network"]="core"
	["nfc"]="core"
	["opengl"]="gui"
	["pdfium"]="core gui network"
	["positioning"]="core"
	["printsupport"]="widgets"
	["qml"]="network"
	["quick"]="gui network qml opengl"
	["quick3d"]="gui network qml quick"
	["remoteobjects"]="core network"
	["scxml"]="core"
	["sensors"]="core"
	["serialbus"]="core network serialport"
	["serialport"]="core"
	["spatialaudio"]="core gui network multimedia"
	["speech"]="core multimedia"
	["sql"]="widgets"
	["svg"]="gui"
	["testlib"]="widgets"
	["uitools"]="widgets"
	["webchannel"]="core"
	["webengine"]="core gui network printsupport quick webchannel"
	["websockets"]="network"
	["webview"]="gui quick webengine"
	["widgets"]="gui"
	["xml"]="core"
)
  GlobalDeclareWithoutG: version 6.9999: line 44: call to 'declare -A' without '-g' in global scope: declare -A QT_MODULES=(
	["3d"]="3DCore 3DRender 3DLogic 3DInput 3DAnimation 3DExtras"
	["bluetooth"]="Bluetooth"
	["charts"]="Charts"
	["+concurrent"]="Concurrent"
	["+core"]="Core"
	["+dbus"]="DBus"
	["designer"]="Designer"
	["+gui"]="Gui"
	["help"]="Help"
	["httpserver"]="HttpServer"
	["location"]="Location"
	["multimedia"]="Multimedia" # plus widgets
	["network-auth"]="NetworkAuth"
	["+network"]="Network"
	["nfc"]="Nfc"
	["+opengl"]="OpenGL" # plus widgets
	["pdfium"]="Pdf" # plus widgets
	["positioning"]="Positioning"
	["+printsupport"]="PrintSupport"
	["qml"]="Qml"
	["quick3d"]="Quick3D"
	["quick"]="Quick" # plus widgets
	["remoteobjects"]="RemoteObjects"
	["scxml"]="Scxml"
	["sensors"]="Sensors"
	["serialbus"]="SerialBus"
	["serialport"]="SerialPort"
	["spatialaudio"]="SpatialAudio"
	["+sql"]="Sql"
	["svg"]="Svg" # plus widgets
	["speech"]="TextToSpeech"
	["+testlib"]="Test"
	["uitools"]="UiTools"
	["webchannel"]="WebChannel"
	["webengine"]="WebEngineCore" # plus widgets and quick
	["websockets"]="WebSockets"
	["webview"]="WebView"
	["+widgets"]="Widgets"
	["+xml"]="Xml"
)
  GlobalDeclareWithoutG: version 6.9999: line 89: call to 'declare -A' without '-g' in global scope: declare -A QT_REQUIREMENTS=(
	["3d"]="gui network opengl"
	["bluetooth"]="core"
	["charts"]="core gui widgets"
	["concurrent"]="core"
	["dbus"]="core"
	["designer"]="widgets"
	["gles2-only"]="gui"
	["gui"]="core"
	["help"]="widgets"
	["httpserver"]="core concurrent network websockets"
	["location"]="core positioning"
	["multimedia"]="core gui network"
	["network-auth"]="network"
	["network"]="core"
	["nfc"]="core"
	["opengl"]="gui"
	["pdfium"]="core gui network"
	["positioning"]="core"
	["printsupport"]="widgets"
	["qml"]="network"
	["quick"]="gui network qml opengl"
	["quick3d"]="gui network qml quick"
	["remoteobjects"]="core network"
	["scxml"]="core"
	["sensors"]="core"
	["serialbus"]="core network serialport"
	["serialport"]="core"
	["spatialaudio"]="core gui network multimedia"
	["speech"]="core multimedia"
	["sql"]="widgets"
	["svg"]="gui"
	["testlib"]="widgets"
	["uitools"]="widgets"
	["webchannel"]="core"
	["webengine"]="core gui network printsupport quick webchannel"
	["websockets"]="network"
	["webview"]="gui quick webengine"
	["widgets"]="gui"
	["xml"]="core"
)

dev-python/rfc3161-client
  GlobalDeclareWithoutG: version 1.0.3: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[cryptography-x509]='https://github.com/pyca/cryptography;678c0c59f743e3b301fbd34f1d26112db0cc2216;cryptography-%commit%/src/rust/cryptography-x509'
)
  GlobalDeclareWithoutG: version 1.0.4: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[cryptography-x509]='https://github.com/pyca/cryptography;678c0c59f743e3b301fbd34f1d26112db0cc2216;cryptography-%commit%/src/rust/cryptography-x509'
)
  GlobalDeclareWithoutG: version 1.0.5: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[cryptography-x509]='https://github.com/pyca/cryptography;678c0c59f743e3b301fbd34f1d26112db0cc2216;cryptography-%commit%/src/rust/cryptography-x509'
)
  GlobalDeclareWithoutG: version 1.0.6: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[cryptography-x509]='https://github.com/pyca/cryptography;678c0c59f743e3b301fbd34f1d26112db0cc2216;cryptography-%commit%/src/rust/cryptography-x509'
)

dev-qt/qtbase
  GlobalDeclareWithoutG: version 6.10.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
	[global]="+ssl +udev zstd"
	[core]="icu journald syslog"
	[modules]="+concurrent +dbus +gui +network +sql +xml"

	[gui]="
		+X accessibility eglfs evdev gles2-only +libinput
		opengl renderdoc tslib vulkan wayland +widgets
	"
	[network]="brotli gssapi libproxy sctp"
	[sql]="mysql oci8 odbc postgres +sqlite"
	[widgets]="cups gtk"

	[optfeature]="nls" #810802
)
  GlobalDeclareWithoutG: version 6.10.2: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
	[global]="+ssl +udev zstd"
	[core]="icu journald syslog"
	[modules]="+concurrent +dbus +gui +network +sql +xml"

	[gui]="
		+X accessibility eglfs evdev gles2-only +libinput
		opengl renderdoc tslib vulkan wayland +widgets
	"
	[network]="brotli gssapi libproxy sctp"
	[sql]="mysql oci8 odbc postgres +sqlite"
	[widgets]="cups gtk"

	[optfeature]="nls" #810802
)
  GlobalDeclareWithoutG: version 6.10.3: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
	[global]="+ssl +udev zstd"
	[core]="icu journald syslog"
	[modules]="+concurrent +dbus +gui +network +sql +xml"

	[gui]="
		+X accessibility eglfs evdev gles2-only +libinput
		opengl renderdoc tslib vulkan wayland +widgets
	"
	[network]="brotli gssapi libproxy sctp"
	[sql]="mysql oci8 odbc postgres +sqlite"
	[widgets]="cups gtk"

	[optfeature]="nls" #810802
)
  GlobalDeclareWithoutG: version 6.11.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
	[global]="+ssl +udev zstd"
	[core]="icu io-uring journald syslog"
	[modules]="+concurrent +dbus +gui +network +sql +xml"

	[gui]="
		+X accessibility eglfs evdev gles2-only +libinput
		opengl renderdoc tslib vulkan wayland +widgets
	"
	[network]="brotli gssapi libproxy sctp"
	[sql]="mysql oci8 odbc postgres +sqlite"
	[widgets]="cups gtk"

	[optfeature]="nls" #810802
)
  GlobalDeclareWithoutG: version 6.11.9999: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
	[global]="+ssl +udev zstd"
	[core]="icu io-uring journald syslog"
	[modules]="+concurrent +dbus +gui +network +sql +xml"

	[gui]="
		+X accessibility eglfs evdev gles2-only +libinput
		opengl renderdoc tslib vulkan wayland +widgets
	"
	[network]="brotli gssapi libproxy sctp"
	[sql]="mysql oci8 odbc postgres +sqlite"
	[widgets]="cups gtk"

	[optfeature]="nls" #810802
)
  GlobalDeclareWithoutG: version 6.9999: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
	[global]="+ssl +udev zstd"
	[core]="icu io-uring journald syslog"
	[modules]="+concurrent +dbus +gui +network +sql +xml"

	[gui]="
		+X accessibility eglfs evdev gles2-only +libinput
		opengl renderdoc tslib vulkan wayland +widgets
	"
	[network]="brotli gssapi libproxy sctp"
	[sql]="mysql oci8 odbc postgres +sqlite"
	[widgets]="cups gtk"

	[optfeature]="nls" #810802
)

dev-util/bpf-linker
  GlobalDeclareWithoutG: version 0.9.15: line 19: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[compiletest_rs]='https://github.com/Manishearth/compiletest-rs;0c1418d5cd5177ee9d863a5c2f300c0973cfc4f1;compiletest-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.9.15-r1: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[compiletest_rs]='https://github.com/Manishearth/compiletest-rs;0c1418d5cd5177ee9d863a5c2f300c0973cfc4f1;compiletest-rs-%commit%'
)

dev-util/pixi
  GlobalDeclareWithoutG: version 0.66.0: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[async_zip]='https://github.com/astral-sh/rs-async-zip;285e48742b74ab109887d62e1ae79e7c15fd4878;rs-async-zip-%commit%'
	[pubgrub]='https://github.com/astral-sh/pubgrub;d8efd77673c9a90792da9da31b6c0da7ea8a324b;pubgrub-%commit%'
	[reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;7650ed76215a962a96d94a79be71c27bffde7ab2;reqwest-middleware-%commit%/reqwest-middleware'
	[reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;7650ed76215a962a96d94a79be71c27bffde7ab2;reqwest-middleware-%commit%/reqwest-retry'
	[tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
	[uv-auth]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-auth'
	[uv-build-backend]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-build-backend'
	[uv-build-frontend]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-build-frontend'
	[uv-cache-info]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-cache-info'
	[uv-cache-key]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-cache-key'
	[uv-cache]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-cache'
	[uv-client]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-client'
	[uv-configuration]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-configuration'
	[uv-console]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-console'
	[uv-dirs]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-dirs'
	[uv-dispatch]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-dispatch'
	[uv-distribution-filename]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-distribution-filename'
	[uv-distribution-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-distribution-types'
	[uv-distribution]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-distribution'
	[uv-extract]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-extract'
	[uv-flags]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-flags'
	[uv-fs]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-fs'
	[uv-git-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-git-types'
	[uv-git]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-git'
	[uv-globfilter]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-globfilter'
	[uv-install-wheel]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-install-wheel'
	[uv-installer]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-installer'
	[uv-keyring]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-keyring'
	[uv-macros]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-macros'
	[uv-metadata]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-metadata'
	[uv-normalize]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-normalize'
	[uv-once-map]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-once-map'
	[uv-options-metadata]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-options-metadata'
	[uv-pep440]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-pep440'
	[uv-pep508]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-pep508'
	[uv-platform-tags]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-platform-tags'
	[uv-platform]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-platform'
	[uv-preview]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-preview'
	[uv-pypi-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-pypi-types'
	[uv-python]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-python'
	[uv-redacted]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-redacted'
	[uv-requirements-txt]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-requirements-txt'
	[uv-requirements]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-requirements'
	[uv-resolver]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-resolver'
	[uv-scripts]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-scripts'
	[uv-settings]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-settings'
	[uv-shell]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-shell'
	[uv-small-str]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-small-str'
	[uv-state]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-state'
	[uv-static]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-static'
	[uv-torch]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-torch'
	[uv-trampoline-builder]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-trampoline-builder'
	[uv-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-types'
	[uv-version]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-version'
	[uv-virtualenv]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-virtualenv'
	[uv-warnings]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-warnings'
	[uv-workspace]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-workspace'
	[version-ranges]='https://github.com/astral-sh/pubgrub;d8efd77673c9a90792da9da31b6c0da7ea8a324b;pubgrub-%commit%/version-ranges'
)
  GlobalDeclareWithoutG: version 0.67.0: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[async_zip]='https://github.com/astral-sh/rs-async-zip;285e48742b74ab109887d62e1ae79e7c15fd4878;rs-async-zip-%commit%'
	[pubgrub]='https://github.com/astral-sh/pubgrub;d8efd77673c9a90792da9da31b6c0da7ea8a324b;pubgrub-%commit%'
	[reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;7650ed76215a962a96d94a79be71c27bffde7ab2;reqwest-middleware-%commit%/reqwest-middleware'
	[reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;7650ed76215a962a96d94a79be71c27bffde7ab2;reqwest-middleware-%commit%/reqwest-retry'
	[tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
	[uv-auth]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-auth'
	[uv-build-backend]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-build-backend'
	[uv-build-frontend]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-build-frontend'
	[uv-cache-info]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-cache-info'
	[uv-cache-key]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-cache-key'
	[uv-cache]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-cache'
	[uv-client]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-client'
	[uv-configuration]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-configuration'
	[uv-console]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-console'
	[uv-dirs]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-dirs'
	[uv-dispatch]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-dispatch'
	[uv-distribution-filename]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-distribution-filename'
	[uv-distribution-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-distribution-types'
	[uv-distribution]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-distribution'
	[uv-extract]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-extract'
	[uv-flags]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-flags'
	[uv-fs]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-fs'
	[uv-git-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-git-types'
	[uv-git]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-git'
	[uv-globfilter]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-globfilter'
	[uv-install-wheel]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-install-wheel'
	[uv-installer]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-installer'
	[uv-keyring]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-keyring'
	[uv-macros]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-macros'
	[uv-metadata]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-metadata'
	[uv-normalize]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-normalize'
	[uv-once-map]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-once-map'
	[uv-options-metadata]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-options-metadata'
	[uv-pep440]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-pep440'
	[uv-pep508]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-pep508'
	[uv-platform-tags]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-platform-tags'
	[uv-platform]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-platform'
	[uv-preview]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-preview'
	[uv-pypi-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-pypi-types'
	[uv-python]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-python'
	[uv-redacted]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-redacted'
	[uv-requirements-txt]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-requirements-txt'
	[uv-requirements]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-requirements'
	[uv-resolver]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-resolver'
	[uv-scripts]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-scripts'
	[uv-settings]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-settings'
	[uv-shell]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-shell'
	[uv-small-str]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-small-str'
	[uv-state]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-state'
	[uv-static]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-static'
	[uv-torch]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-torch'
	[uv-trampoline-builder]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-trampoline-builder'
	[uv-types]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-types'
	[uv-version]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-version'
	[uv-virtualenv]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-virtualenv'
	[uv-warnings]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-warnings'
	[uv-workspace]='https://github.com/astral-sh/uv;d5f39331a73d5042e70ab770463dff632e20c127;uv-%commit%/crates/uv-workspace'
	[version-ranges]='https://github.com/astral-sh/pubgrub;d8efd77673c9a90792da9da31b6c0da7ea8a324b;pubgrub-%commit%/version-ranges'
)

dev-util/ruff
  GlobalDeclareWithoutG: version 0.14.9: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[lsp-types]='https://github.com/astral-sh/lsp-types;3512a9f33eadc5402cfab1b8f7340824c8ca1439;lsp-types-%commit%'
	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;55e5e7d32fa3fc189276f35bb04c9438f9aedbd1;salsa-%commit%/components/salsa-macro-rules'
	[salsa-macros]='https://github.com/salsa-rs/salsa;55e5e7d32fa3fc189276f35bb04c9438f9aedbd1;salsa-%commit%/components/salsa-macros'
	[salsa]='https://github.com/salsa-rs/salsa;55e5e7d32fa3fc189276f35bb04c9438f9aedbd1;salsa-%commit%'
)
  GlobalDeclareWithoutG: version 0.14.14: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[lsp-types]='https://github.com/astral-sh/lsp-types;3512a9f33eadc5402cfab1b8f7340824c8ca1439;lsp-types-%commit%'
	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;9860ff6ca0f1f8f3a8d6b832020002790b501254;salsa-%commit%/components/salsa-macro-rules'
	[salsa-macros]='https://github.com/salsa-rs/salsa;9860ff6ca0f1f8f3a8d6b832020002790b501254;salsa-%commit%/components/salsa-macros'
	[salsa]='https://github.com/salsa-rs/salsa;9860ff6ca0f1f8f3a8d6b832020002790b501254;salsa-%commit%'
)
  GlobalDeclareWithoutG: version 0.15.8: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[lsp-types]='https://github.com/astral-sh/lsp-types;e15db0593f0ecbbd80599c3f5880e4bf5da1ca0c;lsp-types-%commit%'
	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%/components/salsa-macro-rules'
	[salsa-macros]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%/components/salsa-macros'
	[salsa]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%'
)
  GlobalDeclareWithoutG: version 0.15.9: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[lsp-types]='https://github.com/astral-sh/lsp-types;e15db0593f0ecbbd80599c3f5880e4bf5da1ca0c;lsp-types-%commit%'
	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%/components/salsa-macro-rules'
	[salsa-macros]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%/components/salsa-macros'
	[salsa]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%'
)
  GlobalDeclareWithoutG: version 0.15.10: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[lsp-types]='https://github.com/astral-sh/lsp-types;e15db0593f0ecbbd80599c3f5880e4bf5da1ca0c;lsp-types-%commit%'
	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%/components/salsa-macro-rules'
	[salsa-macros]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%/components/salsa-macros'
	[salsa]='https://github.com/salsa-rs/salsa;2f687a17ceea8ec7aaa605561ccbde938ccef086;salsa-%commit%'
)

dev-util/ty
  GlobalDeclareWithoutG: version 0.0.7: line 481: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[lsp-types]='https://github.com/astral-sh/lsp-types;3512a9f33eadc5402cfab1b8f7340824c8ca1439;lsp-types-%commit%'
	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;ce80691fa0b87dc2fd2235a26544e63e5e43d8d3;salsa-%commit%/components/salsa-macro-rules'
	[salsa-macros]='https://github.com/salsa-rs/salsa;ce80691fa0b87dc2fd2235a26544e63e5e43d8d3;salsa-%commit%/components/salsa-macros'
	[salsa]='https://github.com/salsa-rs/salsa;ce80691fa0b87dc2fd2235a26544e63e5e43d8d3;salsa-%commit%'
)

games-emulation/dolphin
  GlobalDeclareWithoutG: version 2603: line 137: call to 'declare -A' without '-g' in global scope: declare -A KEEP_BUNDLED=(
	# please keep this list in CMakeLists.txt order

	[Bochs_disasm]=LGPL-2.1+
	[cpp-optparse]=MIT
	[imgui]=MIT
	[implot]=MIT

	[tinygltf]=MIT

	[FreeSurround]=GPL-2+
	[soundtouch]=LGPL-2.1+

	# FIXME: discord-rpc not packaged
	[discord-rpc]=MIT

	[picojson]=BSD-2
	[expr]=MIT
	[rangeset]=ZLIB
	[FatFs]=FatFs
	[rcheevos]=MIT
	[Vulkan-Headers]="|| ( Apache-2.0 MIT )"
	[VulkanMemoryAllocator]=MIT
	[watcher]=MIT
	[cpp-ipc]=MIT
)
  GlobalDeclareWithoutG: version 9999: line 137: call to 'declare -A' without '-g' in global scope: declare -A KEEP_BUNDLED=(
	# please keep this list in CMakeLists.txt order

	[Bochs_disasm]=LGPL-2.1+
	[cpp-optparse]=MIT
	[imgui]=MIT
	[implot]=MIT

	[tinygltf]=MIT

	[FreeSurround]=GPL-2+
	[soundtouch]=LGPL-2.1+

	# FIXME: discord-rpc not packaged
	[discord-rpc]=MIT

	[picojson]=BSD-2
	[expr]=MIT
	[rangeset]=ZLIB
	[FatFs]=FatFs
	[rcheevos]=MIT
	[Vulkan-Headers]="|| ( Apache-2.0 MIT )"
	[VulkanMemoryAllocator]=MIT
	[watcher]=MIT
	[cpp-ipc]=MIT
)

media-fonts/iosevka
  GlobalDeclareWithoutG: version 30.1.2: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 31.8.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 32.0.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 32.2.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 32.3.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 32.3.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 32.4.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 33.0.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 33.2.4: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 33.2.8: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 33.3.6: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 34.1.0: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)
  GlobalDeclareWithoutG: version 34.3.0: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
	["iosevka"]="Iosevka"
	["iosevka-slab"]="Iosevka Slab"
	["iosevka-curly"]="Iosevka Curly"
	["iosevka-curly-slab"]="Iosevka Curly Slab"
	["iosevka-ss01"]="Iosevka SS01"
	["iosevka-ss02"]="Iosevka SS02"
	["iosevka-ss03"]="Iosevka SS03"
	["iosevka-ss04"]="Iosevka SS04"
	["iosevka-ss05"]="Iosevka SS05"
	["iosevka-ss06"]="Iosevka SS06"
	["iosevka-ss07"]="Iosevka SS07"
	["iosevka-ss08"]="Iosevka SS08"
	["iosevka-ss09"]="Iosevka SS09"
	["iosevka-ss10"]="Iosevka SS10"
	["iosevka-ss11"]="Iosevka SS11"
	["iosevka-ss12"]="Iosevka SS12"
	["iosevka-ss13"]="Iosevka SS13"
	["iosevka-ss14"]="Iosevka SS14"
	["iosevka-ss15"]="Iosevka SS15"
	["iosevka-ss16"]="Iosevka SS16"
	["iosevka-ss17"]="Iosevka SS17"
	["iosevka-ss18"]="Iosevka SS18"
	["iosevka-aile"]="Iosevka Aile"
	["iosevka-etoile"]="Iosevka Etoile"
)

media-gfx/fotema
  GlobalDeclareWithoutG: version 2.4.1: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[rust-faces]='https://github.com/blissd/fotema-rust-faces;d1d1787344e5ce4252feaac7a75d83546dad482e;fotema-rust-faces-%commit%'
)

media-video/handbrake
  GlobalDeclareWithoutG: version 1.10.2: line 32: call to 'declare -A' without '-g' in global scope: declare -A BUNDLED=(
	# Heavily patched in an incompatible way.
	# Issues related to using system ffmpeg historically.
	# See bug #829595 and #922828
	[ffmpeg]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/ffmpeg-7.1.1.tar.bz2;"
	# Patched in an incompatible way
	[x265]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20250729-13276.tar.gz;x265"
	[x265_8bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20250729-13276.tar.gz;x265"
	[x265_10bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20250729-13276.tar.gz;x265"
	[x265_12bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20250729-13276.tar.gz;x265"
)
  GlobalDeclareWithoutG: version 1.11.1: line 32: call to 'declare -A' without '-g' in global scope: declare -A BUNDLED=(
	# Heavily patched in an incompatible way.
	# Issues related to using system ffmpeg historically.
	# See bug #829595 and #922828
	[ffmpeg]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/ffmpeg-8.0.1.tar.bz2;"
	# Patched in an incompatible way
	[x265]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
	[x265_8bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
	[x265_10bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
	[x265_12bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
)
  GlobalDeclareWithoutG: version 9999: line 32: call to 'declare -A' without '-g' in global scope: declare -A BUNDLED=(
	# Heavily patched in an incompatible way.
	# Issues related to using system ffmpeg historically.
	# See bug #829595 and #922828
	[ffmpeg]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/ffmpeg-8.0.1.tar.bz2;"
	# Patched in an incompatible way
	[x265]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
	[x265_8bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
	[x265_10bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
	[x265_12bit]="https://github.com/HandBrake/HandBrake-contribs/releases/download/contribs2/x265-snapshot-20260216-13309.tar.gz;x265"
)

net-analyzer/bandwhich
  GlobalDeclareWithoutG: version 0.23.1: line 298: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[packet-builder]="https://github.com/cyqsimon/packet_builder;bf5a89ba75795f5067bb03fa8de00b833ffe4eae;packet_builder-%commit%"
)

net-im/fractal
  GlobalDeclareWithoutG: version 12.1-r1: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[matrix-sdk-base]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-base'
	[matrix-sdk-common]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-common'
	[matrix-sdk-crypto]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-crypto'
	[matrix-sdk-indexeddb]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-indexeddb'
	[matrix-sdk-qrcode]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-qrcode'
	[matrix-sdk-sqlite]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-sqlite'
	[matrix-sdk-store-encryption]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-store-encryption'
	[matrix-sdk-ui]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk-ui'
	[matrix-sdk]='https://github.com/matrix-org/matrix-rust-sdk;a9ce1c6e5822b8eb8411c5bc257049d9a9d15884;matrix-rust-sdk-%commit%/crates/matrix-sdk'
	[ruma-client-api]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-client-api'
	[ruma-common]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-common'
	[ruma-events]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-events'
	[ruma-federation-api]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-federation-api'
	[ruma-html]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-html'
	[ruma-identifiers-validation]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-identifiers-validation'
	[ruma-macros]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma-macros'
	[ruma]='https://github.com/ruma/ruma;a2fe858133ba932b4bda730dc7472c9c985739a0;ruma-%commit%/crates/ruma'
)
  GlobalDeclareWithoutG: version 13: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[matrix-sdk-base]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-base'
	[matrix-sdk-common]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-common'
	[matrix-sdk-crypto]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-crypto'
	[matrix-sdk-indexeddb]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-indexeddb'
	[matrix-sdk-qrcode]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-qrcode'
	[matrix-sdk-sqlite]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-sqlite'
	[matrix-sdk-store-encryption]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-store-encryption'
	[matrix-sdk-ui]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk-ui'
	[matrix-sdk]='https://github.com/matrix-org/matrix-rust-sdk;c1bc814ac2c306da704c5e10b7feda2e207beb19;matrix-rust-sdk-%commit%/crates/matrix-sdk'
	[ruma-client-api]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-client-api'
	[ruma-common]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-common'
	[ruma-events]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-events'
	[ruma-federation-api]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-federation-api'
	[ruma-html]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-html'
	[ruma-identifiers-validation]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-identifiers-validation'
	[ruma-macros]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-macros'
	[ruma-signatures]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma-signatures'
	[ruma]='https://github.com/ruma/ruma;c441eccb92a36467217ff929cd71462fbeeeaf1a;ruma-%commit%/crates/ruma'
)

net-misc/zerotier
  GlobalDeclareWithoutG: version 1.14.2-r2: line 372: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[jwt]='https://github.com/glimberg/rust-jwt;61a9291fdeec747c6edf14f4fa0caf235136c168;rust-jwt-%commit%'
	[rustfsm]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/fsm'
	[rustfsm_procmacro]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/fsm/rustfsm_procmacro'
	[rustfsm_trait]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/fsm/rustfsm_trait'
	[temporal-client]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/client'
	[temporal-sdk-core-api]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/core-api'
	[temporal-sdk-core-protos]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/sdk-core-protos'
	[temporal-sdk-core]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/core'
	[temporal-sdk]='https://github.com/temporalio/sdk-core;730aadcc02767ae630e88f8f8c788a85d6bc81e6;sdk-core-%commit%/sdk'
)
  GlobalDeclareWithoutG: version 1.16.0-r2: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[jwt]='https://github.com/glimberg/rust-jwt;61a9291fdeec747c6edf14f4fa0caf235136c168;rust-jwt-%commit%'
	[rustfsm]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/fsm'
	[rustfsm_procmacro]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/fsm/rustfsm_procmacro'
	[rustfsm_trait]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/fsm/rustfsm_trait'
	[temporal-client]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/client'
	[temporal-sdk-core-api]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/core-api'
	[temporal-sdk-core-protos]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/sdk-core-protos'
	[temporal-sdk-core]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/core'
	[temporal-sdk]='https://github.com/temporalio/sdk-core;4614dcb8f4ffd2cb244eb0a19d7485c896e3459e;sdk-core-%commit%/sdk'
)

net-proxy/mitmproxy-rs
  GlobalDeclareWithoutG: version 0.12.9: line 8: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[boringtun]='https://github.com/cloudflare/boringtun;2f3c85f5c4a601018c10b464b1ca890d9504bf6e;boringtun-%commit%/boringtun'
)

net-proxy/mitmproxy-linux
  GlobalDeclareWithoutG: version 0.12.9: line 39: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[boringtun]='https://github.com/cloudflare/boringtun;2f3c85f5c4a601018c10b464b1ca890d9504bf6e;boringtun-%commit%/boringtun'
)

sci-physics/geant-data
  GlobalDeclareWithoutG: version 4.11.3: line 17: call to 'declare -A' without '-g' in global scope: declare -A DATASETS
  GlobalDeclareWithoutG: version 4.11.4: line 17: call to 'declare -A' without '-g' in global scope: declare -A DATASETS

sys-apps/amdgpu_top
  GlobalDeclareWithoutG: version 0.10.3: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[libdrm_amdgpu_sys]='https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs;bbe45fbfd1924b96684fc76683e4c61a93449c49;libdrm-amdgpu-sys-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.10.4: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[libdrm_amdgpu_sys]='https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs;69196107b2a8ab8dabfd67265f004f16f146a308;libdrm-amdgpu-sys-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.11.0: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[libdrm_amdgpu_sys]='https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs;8d0029b4cf8f3b995728614f96c03f6e3dcf4f9e;libdrm-amdgpu-sys-rs-%commit%'
)
  GlobalDeclareWithoutG: version 0.11.2: line 12: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[libdrm_amdgpu_sys]='https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs;02aec00249416c762122bdff582fe6ce5053a4ce;libdrm-amdgpu-sys-rs-%commit%'
)

sys-block/thin-provisioning-tools
  GlobalDeclareWithoutG: version 1.1.0-r3: line 150: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[rio]='https://github.com/jthornber/rio;2979a720f671e836302c01546f9cc9f7988610c8;rio-%commit%'
)

sys-power/wluma
  GlobalDeclareWithoutG: version 4.3.0-r3: line 172: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
	[toml]='https://github.com/HarveyHunt/toml;7db18be32494855199ed827ac389e161914bd20d;toml-%commit%/crates/toml'
	[toml_datetime]='https://github.com/HarveyHunt/toml;7db18be32494855199ed827ac389e161914bd20d;toml-%commit%/crates/toml_datetime'
)

Comment thread src/pkgcheck/bash/__init__.py Outdated
Comment thread src/pkgcheck/checks/codingstyle.py Outdated
Any use of declare is local scope unless a -g is passed.
Missing -g can cause issues when the ebuild is sourced inside a function
(as non-portage package managers may do).

One example is pkgcore: when it processes ebuilds with declare -A
without -g, it usually fails in configure phase (good outcome) or worse,
it silently skips some files in install phase.

The new check is added as a warning since Portage is not affected.

Closes: pkgcore#628

Signed-off-by: Sv. Lockal <lockalsash@gmail.com>
@AngryLoki
Copy link
Copy Markdown
Author

135 warnings in ::gentoo

Details

app-accessibility/mbrola-voices
  GlobalDeclareWithoutG: version 0_pre20200331: line 16: call to 'declare -A' without '-g' in global scope: declare -A voicemap

app-i18n/rime-data
  GlobalDeclareWithoutG: version 1.0.20250124: line 6: call to 'declare -A' without '-g' in global scope: declare -A PKGS=(
  GlobalDeclareWithoutG: version 1.0.20250124: line 15: call to 'declare -A' without '-g' in global scope: declare -A PKGS_EXTRA=(
  GlobalDeclareWithoutG: version 1.0.20251206: line 6: call to 'declare -A' without '-g' in global scope: declare -A PKGS=(
  GlobalDeclareWithoutG: version 1.0.20251206: line 15: call to 'declare -A' without '-g' in global scope: declare -A PKGS_EXTRA=(

app-emulation/qemu
  GlobalDeclareWithoutG: version 9.1.3-r2: line 30: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 9.2.3-r3: line 30: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 9.2.4: line 30: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 10.0.5: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 10.0.7: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 10.1.3-r1: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 10.2.0-r1: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 10.2.2: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(
  GlobalDeclareWithoutG: version 9999: line 28: call to 'declare -A' without '-g' in global scope: declare -A SUBPROJECTS=(

app-laptop/framework-tool-tui
  GlobalDeclareWithoutG: version 0.8.0: line 304: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

app-misc/anki
  GlobalDeclareWithoutG: version 25.09.2: line 12: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 25.09.2: line 24: call to 'declare -A' without '-g' in global scope: declare -A COMMITS=(

app-editors/zed
  GlobalDeclareWithoutG: version 0.226.4: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.227.1: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.230.1: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.231.2: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

app-laptop/framework_tool
  GlobalDeclareWithoutG: version 0.4.3: line 204: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.4.5: line 204: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.5.0: line 234: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

app-shells/fish
  GlobalDeclareWithoutG: version 4.4.0: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 4.5.0-r2: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 4.6.0: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 9999: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

app-antivirus/clamav
  GlobalDeclareWithoutG: version 1.4.1-r3: line 151: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.4.2-r1: line 151: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.4.3: line 151: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.4.4: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.5.1: line 305: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.5.2: line 8: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-libs/blazesym_c
  GlobalDeclareWithoutG: version 0.1.5: line 13: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.1.7: line 13: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-python/ensurepip-setuptools
  GlobalDeclareWithoutG: version 80.9.0-r1: line 46: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
  GlobalDeclareWithoutG: version 81.0.0: line 46: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
  GlobalDeclareWithoutG: version 82.0.1: line 46: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(

dev-python/ensurepip-pip
  GlobalDeclareWithoutG: version 25.3: line 59: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
  GlobalDeclareWithoutG: version 26.0: line 59: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(
  GlobalDeclareWithoutG: version 26.0.1: line 59: call to 'declare -A' without '-g' in global scope: declare -A VENDOR_LICENSES=(

dev-python/pyside
  GlobalDeclareWithoutG: version 6.10.2: line 44: call to 'declare -A' without '-g' in global scope: declare -A QT_MODULES=(
  GlobalDeclareWithoutG: version 6.10.2: line 89: call to 'declare -A' without '-g' in global scope: declare -A QT_REQUIREMENTS=(
  GlobalDeclareWithoutG: version 6.10.3: line 44: call to 'declare -A' without '-g' in global scope: declare -A QT_MODULES=(
  GlobalDeclareWithoutG: version 6.10.3: line 89: call to 'declare -A' without '-g' in global scope: declare -A QT_REQUIREMENTS=(
  GlobalDeclareWithoutG: version 6.9999: line 44: call to 'declare -A' without '-g' in global scope: declare -A QT_MODULES=(
  GlobalDeclareWithoutG: version 6.9999: line 89: call to 'declare -A' without '-g' in global scope: declare -A QT_REQUIREMENTS=(

dev-qt/qtbase
  GlobalDeclareWithoutG: version 6.10.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
  GlobalDeclareWithoutG: version 6.10.2: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
  GlobalDeclareWithoutG: version 6.10.3: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
  GlobalDeclareWithoutG: version 6.11.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
  GlobalDeclareWithoutG: version 6.11.9999: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(
  GlobalDeclareWithoutG: version 6.9999: line 15: call to 'declare -A' without '-g' in global scope: declare -A QT6_IUSE=(

dev-python/pyproject-fmt
  GlobalDeclareWithoutG: version 2.18.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 2.19.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 2.20.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 2.21.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 2.21.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-python/rfc3161-client
  GlobalDeclareWithoutG: version 1.0.3: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.0.4: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.0.5: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.0.6: line 77: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-util/bpf-linker
  GlobalDeclareWithoutG: version 0.9.15: line 19: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.9.15-r1: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-util/pixi
  GlobalDeclareWithoutG: version 0.66.0: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.67.0: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-util/ty
  GlobalDeclareWithoutG: version 0.0.7: line 481: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

games-emulation/dolphin
  GlobalDeclareWithoutG: version 2603: line 137: call to 'declare -A' without '-g' in global scope: declare -A KEEP_BUNDLED=(
  GlobalDeclareWithoutG: version 9999: line 137: call to 'declare -A' without '-g' in global scope: declare -A KEEP_BUNDLED=(

dev-util/ruff
  GlobalDeclareWithoutG: version 0.14.9: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.14.14: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.15.8: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.15.9: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.15.10: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

media-fonts/iosevka
  GlobalDeclareWithoutG: version 30.1.2: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 31.8.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 32.0.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 32.2.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 32.3.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 32.3.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 32.4.0: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 33.0.1: line 15: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 33.2.4: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 33.2.8: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 33.3.6: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 34.1.0: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(
  GlobalDeclareWithoutG: version 34.3.0: line 17: call to 'declare -A' without '-g' in global scope: declare -A MY_FONT_VARIANTS=(

media-gfx/fotema
  GlobalDeclareWithoutG: version 2.4.1: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

media-video/handbrake
  GlobalDeclareWithoutG: version 1.10.2: line 32: call to 'declare -A' without '-g' in global scope: declare -A BUNDLED=(
  GlobalDeclareWithoutG: version 1.11.1: line 32: call to 'declare -A' without '-g' in global scope: declare -A BUNDLED=(
  GlobalDeclareWithoutG: version 9999: line 32: call to 'declare -A' without '-g' in global scope: declare -A BUNDLED=(

net-analyzer/bandwhich
  GlobalDeclareWithoutG: version 0.23.1: line 298: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

net-im/fractal
  GlobalDeclareWithoutG: version 12.1-r1: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 13: line 10: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

net-proxy/mitmproxy-rs
  GlobalDeclareWithoutG: version 0.12.9: line 8: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

net-proxy/mitmproxy-linux
  GlobalDeclareWithoutG: version 0.12.9: line 39: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

net-misc/zerotier
  GlobalDeclareWithoutG: version 1.14.2-r2: line 372: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 1.16.0-r2: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

sci-physics/geant-data
  GlobalDeclareWithoutG: version 4.11.3: line 17: call to 'declare -A' without '-g' in global scope: declare -A DATASETS
  GlobalDeclareWithoutG: version 4.11.4: line 17: call to 'declare -A' without '-g' in global scope: declare -A DATASETS

sys-apps/amdgpu_top
  GlobalDeclareWithoutG: version 0.10.3: line 9: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.10.4: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.11.0: line 11: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(
  GlobalDeclareWithoutG: version 0.11.2: line 12: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

sys-block/thin-provisioning-tools
  GlobalDeclareWithoutG: version 1.1.0-r3: line 150: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

sys-power/wluma
  GlobalDeclareWithoutG: version 4.3.0-r3: line 172: call to 'declare -A' without '-g' in global scope: declare -A GIT_CRATES=(

dev-lang/rust
  GlobalDeclareWithoutG: version 1.74.1-r101: line 62: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.75.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.76.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.77.1-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.78.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.79.0-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.80.1-r101: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.81.0-r101: line 59: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.82.0-r103: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.83.0-r3: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.84.0-r2: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.84.1-r2: line 58: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.85.0-r2: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.85.1-r1: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.86.0-r2: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.87.0-r1: line 69: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.88.0: line 60: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.89.0: line 60: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.90.0-r1: line 67: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.91.0: line 62: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.92.0_p1-r1: line 80: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.93.0: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.93.1: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.94.0: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.94.1: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.95.0_beta20260310: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 1.95.0_beta20260404: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS
  GlobalDeclareWithoutG: version 9999: line 79: call to 'declare -A' without '-g' in global scope: declare -A ALL_RUST_EXPERIMENTAL_TARGETS

@AngryLoki AngryLoki requested a review from arthurzam April 15, 2026 08:15
Copy link
Copy Markdown
Contributor

@ferringb ferringb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For my own knowledge- how'd you flush this out? What workflow were you upto where this came up?

It's esoteric and should be checked for, I'm just curious if you caught this due to pkgcheck reasons, or were playing around w/ parts of pkgcore.

return f"line {self.lineno}: call to 'declare -A' without '-g' in global scope: {self.line}"


class GlobalDeclareCheck(Check):
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the future, please slot classes. Pkgcheck is lax on this, but the bulk (or base) of pkgcore ecosystem leans towards slotting as a defensive measure against typos in pathways that lack test coverage.

Not a block, just a FYI for future code.

Comment thread NEWS.rst
- StabilizationGroupsCheck: check for invalid and non-existant stabilization
groups (Arthur Zamarin)

- GlobalDeclareCheck: detect ``declare -A`` without ``-g`` in global scope
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding that; walking the history to update the news is a minor pain the ass. :)


def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.decl_query = bash.query("(declaration_command) @decl")
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I realize you were pointed at "add it to init", but this is effectively a constant- thus should be class level. If you have further refactoring, can you incorporate that?

If not, I'll sort it post merge if I remember.

if child.type == "word":
flag = pkg.node_str(child)
if flag.startswith("-"):
if "A" in flag:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stylistic nit/food for thought: has_A |= "A "in flag

Not a requirement, I'm just pointing it out.

@ferringb
Copy link
Copy Markdown
Contributor

Also- being pkgcore does everything within functions due to the daemon, is declare -A the only one that is effected here?

@AngryLoki AngryLoki marked this pull request as draft April 22, 2026 09:57
@AngryLoki
Copy link
Copy Markdown
Author

Draftified for now. At first I thought it only applies to associative arrays, but it also affects normal arrays.

var1="test"
declare -- var2="test"
declare -A var3=([key1]="value1")
declare -a var4=(1 2 3)

src_unpack() {
	declare -p var1 var2 var3 var4
	die
}

emerge output:

declare -- var1="test"
declare -- var2="test"
declare -A var3=([key1]="value1" )
declare -a var4=([0]="1" [1]="2" [2]="3")

pmerge / paludis output:

declare -- var1="test"
.../temp/environment: line 2510: declare: var2: not found
.../temp/environment: line 2510: declare: var3: not found
.../temp/environment: line 2510: declare: var4: not found

Maybe a better idea is to warn about any global declare without -g (excluding declare -p). Need to check "the damage area" (or alternative solutions)...

@ferringb
Copy link
Copy Markdown
Contributor

ferringb commented Apr 22, 2026

pmerge / paludis output
Shit, paludis supports modern EAPI? If so, I'll try to keep an eye on their implementation for understanding the 'field'.

@ulm from the PMS angle, what's your thoughts here? I do not want to pull tricks out of my ass, but I do think people treat ebuilds as effectively "directly executed bash scripts"- the old portage mechanism of straight out sourcing the ebuild as global script execution still exists, based on the code I just checked.

For anything modern, that's just not acceptable in the ebuild env implementation- we use functions for valid reasons, however I agree it's not great making devs deal w/ the quirks of bash for function vs global.

Said another way; I don't want to change pkgcore because this is literally what portage was supposed to do, and you know well the perf gains from our approach.

@ferringb
Copy link
Copy Markdown
Contributor

Just dumping some thoughts here: the pkgcore ebuild internals, specifically the env saving machinery, is 'aware' enough it could promote this sort of thing to global on it's own. It'd require significant unit test coverage, but basically we'd do this for actual phase execution:

  1. source the fucker.
  2. do a save state step, extracting out the variables defined. Anything there is implicitly global, thus...
  3. mutate the save state to make them global, and either modify our env or reload the modified save state to effect this.

It's doable, it's just not any form of awesome.

@thesamesam
Copy link
Copy Markdown
Member

I think every implementation but Portage runs into this (i.e. I think pkgcraft also hit it, but it was a long while ago now).

@AngryLoki
Copy link
Copy Markdown
Author

AngryLoki commented Apr 22, 2026

For my own knowledge- how'd you flush this out? What workflow were you upto where this came up?

Pointed directly by @negril in #guru IRC. Then successfully forgot about this, did the same mistake again, then decided that it might be better to add a check before I forget in a third time. From the linked task I know that it is possible to work around this. Practically all times I missed -g, pmerge "successful" installation resulted in missing files (e. g. in dev-util/xrt::guru). pmerge surely fails on more complex packages for reasons I did not investigate. I did not try paludis (also, maybe with mentioned patch it even works).

As I said, I can try to count of warnings for all global declares. Also maybe there is some interesting way to do such fixes on package manager side (as been said by ferringb, or redefine declare before sourcing, lol), but it should look not too hacky.

@ferringb
Copy link
Copy Markdown
Contributor

@AngryLoki I opened pkgcore/pkgcore#470 to rework the internal EBD env mechanisms to remove this problem.

Please comment there, but what you've clarified, I don't think ebuild devs should have to force global. They write ebuilds as if it's a bash script, pkgcore is violating devex/intent on this one.

@ferringb ferringb closed this Apr 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[New Check]: detect declare without -g in global scope

4 participants